package com.asset.manage.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.asset.common.annotation.Excel;
import com.asset.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 资产入库对象 asset_info
 *
 * @author mobin
 * @date 2024-08-26
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ApiModel(description = "资产入库对象")
public class Info extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    private Long id;

    /**
     * 资产编号
     */
    @ApiModelProperty(value = "资产编号")
    @Excel(name = "资产编号")
    private String num;

    /**
     * 资产状态
     */
    @ApiModelProperty(value = "资产状态")
    @Excel(name = "资产状态")
    private Long status;

    /**
     * 资产名称
     */
    @ApiModelProperty(value = "资产名称")
    @Excel(name = "资产名称")
    private String name;

    /**
     * 资产类别
     */
    @ApiModelProperty(value = "资产类别")
    @Excel(name = "资产类别")
    private Long classifyId;

    /**
     * 资产照片
     */
    @ApiModelProperty(value = "资产照片")
    @Excel(name = "资产照片")
    private String photo;

    /**
     * 规格型号
     */
    @ApiModelProperty(value = "规格型号")
    @Excel(name = "规格型号")
    private String type;

    /**
     * 金额
     */
    @ApiModelProperty(value = "金额")
    @Excel(name = "金额")
    private BigDecimal amount;

    /**
     * 计量单位
     */
    @ApiModelProperty(value = "计量单位")
    @Excel(name = "计量单位")
    private String unit;

    /**
     * 产品序列号
     */
    @ApiModelProperty(value = "产品序列号")
    @Excel(name = "产品序列号")
    private String snNum;

    /**
     * 所属公司
     */
    @ApiModelProperty(value = "所属公司")
    @Excel(name = "所属公司")
    private Long companyId;

    /**
     * 所属部门
     */
    @ApiModelProperty(value = "所属部门")
    @Excel(name = "所属部门")
    private Long deptId;

    /**
     * 存放地点
     */
    @ApiModelProperty(value = "存放地点")
    @Excel(name = "存放地点")
    private String place;

    /**
     * 来源
     */
    @ApiModelProperty(value = "来源")
    @Excel(name = "来源")
    private Long sourceId;

    /**
     * 购入时间
     */
    @ApiModelProperty(value = "购入时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "购入时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date purchaseTime;

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    @Excel(name = "创建人")
    private Long createUser;

    /**
     * 区域
     */
    @ApiModelProperty(value = "区域")
    @Excel(name = "区域")
    private String region;

}
